package site.jlopen.kuscia.model.dataSource;

public class KusciaOssDataSourceInfo {

	/**
	 * 必填 
	 * 对象存储系统的链接地址，如https://oss.xxx.cn-xxx.com 或 http://127.0.0.1:9000
	 */
	private String endpoint;
	/**
	 * 必填 
	 * 对象存储系统桶bucket名称
	 */
	private String bucket;
	/**
	 * 必填 
	 * 存储系统的路径前缀，可不填，当需要通过路径前缀prefix隔离区分不同数据文件时填写，如：data/traindata/ 或
	 * data/predictdata/
	 */
	private String prefix;
	/**
	 * 必填 
	 * 访问OSS所需的AK
	 */
	private String accessKeyId;
	/**
	 * 必填 
	 * 访问OSS所需的SK
	 */
	private String accessKeySecret;
	/**
	 * 选填 阿里云OSS时使用，同阿里云OSS中的virtualhost定义
	 */
	private String virtualhost;
	/**
	 * 选填 AWS S3协议版本号，可不填
	 */
	private String version;
	/**
	 * 选填 
	 * 存储系统类型，如 oss， minio；支持标准AWS S3的对象存储系统可不填
	 */
	private String storageType;

	public KusciaOssDataSourceInfo(String endpoint, String bucket, String prefix, String accessKeyId,
			String accessKeySecret) {
		super();
		this.endpoint = endpoint;
		this.bucket = bucket;
		this.prefix = prefix;
		this.accessKeyId = accessKeyId;
		this.accessKeySecret = accessKeySecret;
	}

	public KusciaOssDataSourceInfo(String endpoint, String bucket, String prefix, String accessKeyId,
			String accessKeySecret, String virtualhost, String version, String storageType) {
		super();
		this.endpoint = endpoint;
		this.bucket = bucket;
		this.prefix = prefix;
		this.accessKeyId = accessKeyId;
		this.accessKeySecret = accessKeySecret;
		this.virtualhost = virtualhost;
		this.version = version;
		this.storageType = storageType;
	}

	public String getEndpoint() {
		return endpoint;
	}

	public void setEndpoint(String endpoint) {
		this.endpoint = endpoint;
	}

	public String getBucket() {
		return bucket;
	}

	public void setBucket(String bucket) {
		this.bucket = bucket;
	}

	public String getPrefix() {
		return prefix;
	}

	public void setPrefix(String prefix) {
		this.prefix = prefix;
	}

	public String getAccessKeyId() {
		return accessKeyId;
	}

	public void setAccessKeyId(String accessKeyId) {
		this.accessKeyId = accessKeyId;
	}

	public String getAccessKeySecret() {
		return accessKeySecret;
	}

	public void setAccessKeySecret(String accessKeySecret) {
		this.accessKeySecret = accessKeySecret;
	}

	public String getVirtualhost() {
		return virtualhost;
	}

	public void setVirtualhost(String virtualhost) {
		this.virtualhost = virtualhost;
	}

	public String getVersion() {
		return version;
	}

	public void setVersion(String version) {
		this.version = version;
	}

	public String getStorageType() {
		return storageType;
	}

	public void setStorageType(String storageType) {
		this.storageType = storageType;
	}

}
